Various types of motion systems are routinely employed in the technical fields of robotics, automation, machining, medical imaging, computer disk drives, and a number of other fields of technology. A motion control system employed in such motion systems typically includes a digital or analog controller responsive to command inputs, an amplifier/driver, and a linear or rotary actuator coupled to a mechanical system, such as a mechanical tool or a joint of a robotic arm. A six degree of freedom robot system, for purposes of example, represents a motion system which may comprise a six degree of freedom motion control system, a number of robotic arms and joints, and an end effector, such as a tool or gripper. Motion control systems may be implemented for operation in either an open-loop or closed-loop configuration. In a closed-loop configuration, feedback sensors are generally employed to provide the controller with data concerning the actuator and mechanical system during operation.
A high degree of control is often required in many types of motion systems, as any unintended residual vibration during and upon completion of a prescribed movement effectuated by the system may have deleterious consequences. Undesirable vibration within a motion system employed in a medical imaging system, for example, may result in various types of imperfections in an imaging process. Unacceptable levels of surface roughness, by way of further example, may result from unwanted vibration occurring within a motion system employed in high precision machining equipment.
Undesirable vibration or oscillation is of particular concern in the field of stepper motor technology. By way of example, stepper motors are used in a wide variety of applications that require precise positioning. A typical stepper motor includes 100, 200, or 400 evenly spaced magnetic poles respectively disposed on the rotor and stator of the stepper motor, with a greater number of poles generally being disposed on the stator. A controller is typically employed to pulse the stepper motor in order to advance the rotor by single step increments. The controller provides for accurate positioning of the rotor relative to the stator by coupling current to the field windings of the stator and/or the rotor so as to electromagnetically draw the rotor forward or backward, typically with varying levels of vibration/oscillation, until alignment of the stator and rotor poles is realized.
A typical stepper motor having 200 poles can provide a resolution of 1.8.degree. (1/200th of a revolution). Higher levels of resolution may be achieved by employing an inter-pole positioning technique in which currents in the windings of the motor are controlled to define inter-pole positions of the armature. Half-stepping systems, for example, are known to be capable of positioning the armature between adjacent poles. Other known microstepping techniques provide for incremental armature positions at other fractional inter-pole positions.
It is well appreciated in the art that unwanted vibrations or oscillations are of primary concern in many high-precision motion system applications. It is generally desirable to perform a movement using a motion system without residual vibrations when the governing criteria include robustness, minimum move time, and minimum noise. The term "robustness" is generally understood in the art as defining the ability of a system, in response to a command input, to follow a command input with acceptable errors in spite of changes in the system. In the specific case of vibration reduction, robustness is generally understood to define the ability of a system to complete a motion or other output response in response to a command input without excessive residual oscillation or vibration in spite of changes in the fundamental natural frequency of the system. In some applications, it would appear desirable to enhance all of the three above-mentioned characteristics, while in others it may be desirable to focus on only one or two of these characteristics.
A number of techniques have been developed by others in an attempt to reduce undesirable vibrations or oscillations associated with movement of a motor in a motion system. Although many of these previous approaches would appear to provide a measure of unwanted vibration reduction, such techniques often fail to provide the requisite level of robustness required in many applications. Further, many of the previously developed techniques are incapable of accommodating changes in the fundamental natural frequency of the system. Moreover, proposed solutions in the prior art generally ignore the contribution to unwanted residual vibrations made by discrete components of a motion system, and instead only consider the vibration characteristics of the bulk motor structure.
Other more subtle phenomena associated with motion systems are often ignored by conventional motion control schemes. By way of example, prior art approaches to reducing unwanted residual vibration in motor movement often fail to adequately account for ripple torque, which often results in an increase in residual vibration, when attempting to provide an acceptable level of robustness. Other characteristics impacting motion control system performance, such as back EMF effects, may also be inadequately addressed by prior art control schemes without compromising robustness of the system.
There exists a need for methods and systems that can provide robust command inputs which can be used to improve the performance of a motion system, such as DC and stepper motor systems, in terms of robustness, noise, and/or speed as is desired by the designer. There exists a further need for a motion control strategy for systems employing motors, such as DC and stepper motors, that addresses undesirable affects of ripple torque and back EMF without comprising system robustness. The present invention fulfills these and other needs.